const express = require('express');
const app = express();

// 假数据
const goodlist = [];
for(let i=0;i<10;i++){
    const gooditem = {
        id:'gid_'+i,
        name:'gooditem'+i,
        price:'$'+parseInt(Math.random()*1000),
        imgurl:`./img/gooditem_${i}.jpg`
    }
    goodlist.push(gooditem);
}

// 静态资源服务器
app.use(express.static('./'));

// 接口设置：增post、删delete、查get、改put
/* 1.商品列表 */
app.get('/goodlist',(req,res)=>{
    // get请求获取参数
    const data = req.query;
    res.send(data)
});

/* 2.添加单个商品 */
app.post('/goodlist/:idx',(req,res)=>{

    // post请求通过req.params获取变量idx
    let {idx} = req.params;
    // 筛选符合的gid并返回给前端
    let gooditem = goodlist.filter(item=>item.id==idx);
    res.send(gooditem)
    
})

/* 3.删除单个商品 */
app.delete('/goodlist/:idx',(req,res)=>{
    let {idx} = req.params;
    let gooditem = goodlist.filter(item=>item.id==idx);

    // 根据长度判断
    if(gooditem.length){
        res.send('删除成功！')
    }else{
        res.send('删除失败，不存在该商品！')
    }   
})

/* 4.修改单个商品 */
app.put('/goodlist/:idx',(req,res)=>{
    let {idx} = req.params;
    let gooditem = goodlist.filter(item=>item.id==idx);

    if(gooditem.length){
        res.send("商品存在，修改成功！")
    }else{
        res.send("商品不存在，修改失败！")
    }
})

app.listen(2003,()=>{
    console.log("port 2003 is running");
})